on RadioGroup_Toggle me, whichState, callingBehavior
if callingBehavior = me then
exit
end if
if myButtonMember.hilite = whichState then
exit
end if
myButtonMember.hilite = whichState
end
on RadioGroup_SelectedButton me, propListOrString
if not myButtonMember.hilite then
exit
end if
if stringp(propListOrString) then
if propListOrString <> ourID then
exit
end if
end if
groupNumber = ourGroupList.getPos(me)
Data = [:]
Data.addProp(#name, myName)
Data.addProp(#number, groupNumber)
Data.addProp(#sprite, spriteNum)
if ilk(propListOrString) <> #propList then
return Data
else
propListOrString.addProp(ourID, Data)
return propListOrString
end if
end
on ErrorAlert me, theError, Data
behaviorName = string(me)
delete word 1 of behaviorName
delete char -30001 of behaviorName
delete char -30001 of behaviorName
case ilk(Data) of
#symbol:
Data = "#" & Data
end case
case theError of
#getPDLError:
beep()
return [#getPDLError: [#comment: "ERROR: Click 'Cancel'. This behavior" & RETURN & "only works with Button Members", #format: #string, #range: [EMPTY], #default: EMPTY]]
#invalidMember:
alert("BEHAVIOR ERROR: Frame " & the frame & ", Sprite " & me.spriteNum & RETURN & RETURN & "Behavior " & behaviorName & " only functions with Button Members." & RETURN & RETURN & "Current member type = " & Data)
halt()
end case
end
on getPropertyDescriptionList me
if not (the currentSpriteNum) then
exit
end if
theMember = sprite(the currentSpriteNum).member
memberType = theMember.type
if theMember.type <> #button then
return ErrorAlert(me, #getPDLError)
end if
return [#ourID: [#comment: "ID string for the radio button group:", #format: #string, #default: "RadioGroup " & the currentSpriteNum], #myDefault: [#comment: "Default status of button:" & RETURN & "(may be overriden: see notes).", #format: #symbol, #range: [#off, #on, #auto], #default: #off]]